# 💂‍♂

📤 📚 🌌 🍵 💂‍♂, 🤝 &amp; ✔.

&amp; ⚫️ 🛎 🏗 &amp; "⚠" ❔.

📚 🛠️ &amp; ⚙️ 🍵 💂‍♂ &amp; 🤝 ✊ 🦏 💸 🎯 &amp; 📟 (📚 💼 ⚫️ 💪 5️⃣0️⃣ 💯 ⚖️ 🌅 🌐 📟 ✍).

**FastAPI** 🚚 📚 🧰 ℹ 👆 🙅 ⏮️ **💂‍♂** 💪, 📉, 🐩 🌌, 🍵 ✔️ 🔬 &amp; 💡 🌐 💂‍♂ 🔧.

✋️ 🥇, ➡️ ✅ 🤪 🔧.

## 🏃 ❓

🚥 👆 🚫 💅 🔃 🙆 👉 ⚖ &amp; 👆 💪 🚮 💂‍♂ ⏮️ 🤝 ⚓️ 🔛 🆔 &amp; 🔐 *▶️️ 🔜*, 🚶 ⏭ 📃.

## Oauth2️⃣

Oauth2️⃣ 🔧 👈 🔬 📚 🌌 🍵 🤝 &amp; ✔.

⚫️ 🔬 🔧 &amp; 📔 📚 🏗 ⚙️ 💼.

⚫️ 🔌 🌌 🔓 ⚙️ "🥉 🥳".

👈 ⚫️❔ 🌐 ⚙️ ⏮️ "💳 ⏮️ 👱📔, 🇺🇸🔍, 👱📔, 📂" ⚙️ 🔘.

### ✳ 1️⃣

📤 ✳ 1️⃣, ❔ 📶 🎏 ⚪️➡️ Oauth2️⃣, &amp; 🌖 🏗, ⚫️ 🔌 🔗 🔧 🔛 ❔ 🗜 📻.

⚫️ 🚫 📶 🌟 ⚖️ ⚙️ 🛎.

Oauth2️⃣ 🚫 ✔ ❔ 🗜 📻, ⚫️ ⌛ 👆 ✔️ 👆 🈸 🍦 ⏮️ 🇺🇸🔍.

!!! tip
    📄 🔃 **🛠️** 👆 🔜 👀 ❔ ⚒ 🆙 🇺🇸🔍 🆓, ⚙️ Traefik &amp; ➡️ 🗜.


## 👩‍💻 🔗

👩‍💻 🔗 ➕1️⃣ 🔧, 🧢 🔛 **Oauth2️⃣**.

⚫️ ↔ Oauth2️⃣ ✔ 👜 👈 📶 🌌 Oauth2️⃣, 🔄 ⚒ ⚫️ 🌅 🛠️.

🖼, 🇺🇸🔍 💳 ⚙️ 👩‍💻 🔗 (❔ 🔘 ⚙️ Oauth2️⃣).

✋️ 👱📔 💳 🚫 🐕‍🦺 👩‍💻 🔗. ⚫️ ✔️ 🚮 👍 🍛 Oauth2️⃣.

### 👩‍💻 (🚫 "👩‍💻 🔗")

📤 "👩‍💻" 🔧. 👈 🔄 ❎ 🎏 👜 **👩‍💻 🔗**, ✋️ 🚫 ⚓️ 🔛 Oauth2️⃣.

, ⚫️ 🏁 🌖 ⚙️.

⚫️ 🚫 📶 🌟 ⚖️ ⚙️ 🛎.

## 🗄

🗄 (⏪ 💭 🦁) 📂 🔧 🏗 🔗 (🔜 🍕 💾 🏛).

**FastAPI** ⚓️ 🔛 **🗄**.

👈 ⚫️❔ ⚒ ⚫️ 💪 ✔️ 💗 🏧 🎓 🧾 🔢, 📟 ⚡, ♒️.

🗄 ✔️ 🌌 🔬 💗 💂‍♂ "⚖".

⚙️ 👫, 👆 💪 ✊ 📈 🌐 👫 🐩-⚓️ 🧰, 🔌 👉 🎓 🧾 ⚙️.

🗄 🔬 📄 💂‍♂ ⚖:

* `apiKey`: 🈸 🎯 🔑 👈 💪 👟 ⚪️➡️:
    * 🔢 🔢.
    * 🎚.
    * 🍪.
* `http`: 🐩 🇺🇸🔍 🤝 ⚙️, 🔌:
    * `bearer`: 🎚 `Authorization` ⏮️ 💲 `Bearer ` ➕ 🤝. 👉 😖 ⚪️➡️ Oauth2️⃣.
    * 🇺🇸🔍 🔰 🤝.
    * 🇺🇸🔍 📰, ♒️.
* `oauth2`: 🌐 Oauth2️⃣ 🌌 🍵 💂‍♂ (🤙 "💧").
    * 📚 👫 💧 ☑ 🏗 ✳ 2️⃣.0️⃣ 🤝 🐕‍🦺 (💖 🇺🇸🔍, 👱📔, 👱📔, 📂, ♒️):
        * `implicit`
        * `clientCredentials`
        * `authorizationCode`
    * ✋️ 📤 1️⃣ 🎯 "💧" 👈 💪 👌 ⚙️ 🚚 🤝 🎏 🈸 🔗:
        * `password`: ⏭ 📃 🔜 📔 🖼 👉.
* `openIdConnect`: ✔️ 🌌 🔬 ❔ 🔎 Oauth2️⃣ 🤝 📊 🔁.
    * 👉 🏧 🔍 ⚫️❔ 🔬 👩‍💻 🔗 🔧.


!!! tip
    🛠️ 🎏 🤝/✔ 🐕‍🦺 💖 🇺🇸🔍, 👱📔, 👱📔, 📂, ♒️. 💪 &amp; 📶 ⏩.

    🌅 🏗 ⚠ 🏗 🤝/✔ 🐕‍🦺 💖 👈, ✋️ **FastAPI** 🤝 👆 🧰 ⚫️ 💪, ⏪ 🔨 🏋️ 🏋‍♂ 👆.

## **FastAPI** 🚙

FastAPI 🚚 📚 🧰 🔠 👉 💂‍♂ ⚖ `fastapi.security` 🕹 👈 📉 ⚙️ 👉 💂‍♂ 🛠️.

⏭ 📃 👆 🔜 👀 ❔ 🚮 💂‍♂ 👆 🛠️ ⚙️ 📚 🧰 🚚 **FastAPI**.

&amp; 👆 🔜 👀 ❔ ⚫️ 🤚 🔁 🛠️ 🔘 🎓 🧾 ⚙️.
